package Utils.basicDataTypes;

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;

/**
 * FuncProc委托
 *
 * @param <T> 返回的泛型
 * @author d11yu
 */
public interface FuncProc<T> {
    /**
     * 执行委托的命令
     *
     * @param httpClient CloseableHttpClient对象
     * @param response   CloseableHttpResponse对象
     * @param request    HttpGet对象
     * @return T         返回T类型数据
     */
    T invoke(CloseableHttpClient httpClient, CloseableHttpResponse response, HttpGet request);
}
